package com.itqf.service;


import com.itqf.entity.User;

import java.sql.SQLException;
import java.util.List;

/**
 * 用户模块对应的业务逻辑接口类
 */
public interface UserService {

    /**
     *根据用户名查询用户是否存在
     * @param username  查询条件
     * @return  true 用户存在  flase用户不存在
     */
    boolean checkedUser(String username) throws SQLException;

    /**
     * 注册的业务逻辑
     * @param user
     * @return 插入数据影响的行数
     */
    int registerUser(User user) throws SQLException;

    /**
     * 邮件激活码，激活用户
     * @param code
     * @return '用户的激活状态 0 未激活 1 激活', 2已经激活
     */
    int activeUser(String code) throws SQLException;

    /**
     * 登录认证
     * @param username 用户名
     * @return 查询到的用户数据信息
     */
    User loginUser(String username, String password) throws SQLException;

    /**
     * 用户信息查询
     * @param username
     * @param sex
     * @return
     */
    User selectUser(String username, String sex) throws SQLException;

    /**
     * 查询所有用户信息
     * @return
     */
    List<User> selectAllUser() throws SQLException;

    int deleteUserByUid(int uid) throws SQLException;
}
